package com.vpx.server.service.system;

import cn.hutool.json.JSONObject;
import com.baomidou.mybatisplus.extension.service.IService;
import com.vpx.server.bean.entity.Project;
import com.vpx.server.bean.entity.Template;
import com.vpx.server.bean.order.base.BaseDelOrder;
import com.vpx.server.bean.order.base.BaseIdStrOrder;
import com.vpx.server.bean.order.system.BaseInfoAttrListOrder;
import com.vpx.server.bean.order.system.TemplateOrder;
import com.vpx.server.bean.order.system.TemplatePageOrder;
import com.vpx.server.bean.result.system.*;
import com.vpx.server.framework.base.ResultMsg;

import java.util.List;

/**
 * @Description
 * @Author PC
 * @Date 2023/11/18 16:23
 **/
public interface TemplateService extends IService<Template> {

    ResultMsg saveTemplate(TemplateOrder order);

    ResultMsg deleteTemplate(BaseDelOrder order);

    ResultMsg updateTemplateById(TemplateOrder order);

    ResultMsg<TemplateResult> selectTemplateById(BaseIdStrOrder order);

    ResultMsg<TemplatePageResult> pageQueryTemplate(TemplatePageOrder order);

    ResultMsg<TemplateDetailListResult> templateDetailAttrList(String templateId);

    ResultMsg templateAttrSaveUpdate(TemplateOrder order);


    ResultMsg<List<JSONObject>> nodeTemplateDetailAttrList(String nodeId);

    ResultMsg baseInfoAttrSaveUpdate(BaseInfoAttrListOrder order);
}
